gtk4.git
6 years agobroadway: Inherit frame clock from parent surface
Alexander Larsson [Fri, 13 Mar 2020 14:26:22 +0000 (15:26 +0100)]
broadway: Inherit frame clock from parent surface

6 years agobroadway: Keep popups above their parent
Alexander Larsson [Fri, 13 Mar 2020 13:35:43 +0000 (14:35 +0100)]
broadway: Keep popups above their parent

We set the parent as a "transient parent" for popups, which means
they will not be stacked below the parent.

6 years agobroadway: Track surface position correctly
Alexander Larsson [Fri, 13 Mar 2020 13:33:07 +0000 (14:33 +0100)]
broadway: Track surface position correctly

surface->x/y (and various x,y arguments) should be in the parent
coordinates, so treat it as such. We also keep track of the root coords
as these are needed for popup positioning.

Also, drop the isTemp property server side and the weird initial
placement at (100, 100) in the daemon. We now fully control window
placement from the client instead. If this is not we want we should do
a serious design for that but until then lets do the simplest thing.

6 years agobroadway: Correctly track surface visibility in client
Alexander Larsson [Fri, 13 Mar 2020 09:49:44 +0000 (10:49 +0100)]
broadway: Correctly track surface visibility in client

We forgot to unset visible when hiding surfaces

6 years agobroadway: Ensure images are decoded, not only loaded
Alexander Larsson [Fri, 13 Mar 2020 07:56:56 +0000 (08:56 +0100)]
broadway: Ensure images are decoded, not only loaded

In firefox, onload will trigger when the image is loaded, but at
that point it may not be decoded yet so showing it will sometimers
trigger flashes. We use the new decode() feature instead which ensures
both that the image is loaded *and* decoded, thus fixing the flashes.

6 years agobroadway: Fix image updates for firefox
Alexander Larsson [Fri, 13 Mar 2020 07:10:41 +0000 (08:10 +0100)]
broadway: Fix image updates for firefox

For whatever reason we need to assign the function to a variable
to be able to call it.

6 years agobroadway: Handle browser hidpi scale factor
Alexander Larsson [Thu, 12 Mar 2020 10:12:01 +0000 (11:12 +0100)]
broadway: Handle browser hidpi scale factor

6 years agoMerge branch 'present-toplevel-2' into 'master'
Matthias Clasen [Fri, 13 Mar 2020 13:34:57 +0000 (13:34 +0000)]
Merge branch 'present-toplevel-2' into 'master'

surface api splitup

See merge request GNOME/gtk!1511

6 years agoMerge branch 'wip/hadess/fix-remote-filechooser-main' into 'master'
Bastien Nocera [Fri, 13 Mar 2020 12:36:10 +0000 (12:36 +0000)]
Merge branch 'wip/hadess/fix-remote-filechooser-main' into 'master'

Fix crasher/warnings when browsing remote filesystems

Closes #2482

See merge request GNOME/gtk!1490

6 years agowin32: Build fixes
Matthias Clasen [Thu, 12 Mar 2020 11:01:30 +0000 (07:01 -0400)]
win32: Build fixes

These fixes were done blindly, to make the ci pass,
and will need review by somebody with access to an
actual win32 system to make sure the surface subtypes
are implemented properly.

6 years agoMerge branch 'align-docs-fixes' into 'master'
Timm Bäder [Fri, 13 Mar 2020 06:17:46 +0000 (06:17 +0000)]
Merge branch 'align-docs-fixes' into 'master'

gtk: Tweak GTK_ALIGN_BASELINE docs

See merge request GNOME/gtk!1518

6 years agogtk: Tweak GTK_ALIGN_BASELINE docs
Matthew Leeds [Thu, 12 Mar 2020 19:36:09 +0000 (12:36 -0700)]
gtk: Tweak GTK_ALIGN_BASELINE docs

6 years agowin32: implement subtypes
Matthias Clasen [Thu, 12 Mar 2020 04:34:45 +0000 (00:34 -0400)]
win32: implement subtypes

6 years agoFix up gdk docs
Matthias Clasen [Mon, 9 Mar 2020 20:31:38 +0000 (13:31 -0700)]
Fix up gdk docs

6 years agosurface: document gdk_surface_translate_coordinates
Matthias Clasen [Mon, 9 Mar 2020 20:46:42 +0000 (13:46 -0700)]
surface: document gdk_surface_translate_coordinates

6 years agotoplevel: require GdkSurface
Matthias Clasen [Tue, 10 Mar 2020 11:24:04 +0000 (07:24 -0400)]
toplevel: require GdkSurface

6 years agopopup: require GdkSurface
Matthias Clasen [Tue, 10 Mar 2020 11:23:49 +0000 (07:23 -0400)]
popup: require GdkSurface

6 years agoDrop root coordinates from _gdk_device_query_state
Matthias Clasen [Mon, 9 Mar 2020 19:16:01 +0000 (12:16 -0700)]
Drop root coordinates from _gdk_device_query_state

Callers are not using them anyway. Update all callers.

6 years agoDrop mwm hints from api
Matthias Clasen [Mon, 9 Mar 2020 19:03:48 +0000 (12:03 -0700)]
Drop mwm hints from api

The GdkWMDecoration and GdkWMFunction enums
are no longer used in the api, so move them
to the x11 backend where they are used.

6 years agoMove fullscreen-mode to GdkToplevel
Matthias Clasen [Mon, 9 Mar 2020 18:49:59 +0000 (11:49 -0700)]
Move fullscreen-mode to GdkToplevel

6 years agoMove edge-constraints to GdkToplevel
Matthias Clasen [Mon, 9 Mar 2020 18:38:08 +0000 (11:38 -0700)]
Move edge-constraints to GdkToplevel

6 years agosurface: Drop unused vfuncs
Matthias Clasen [Wed, 11 Mar 2020 20:19:58 +0000 (16:19 -0400)]
surface: Drop unused vfuncs

These are now entirely unused.

6 years agoquartz: Drop unused vfuncs
Matthias Clasen [Wed, 11 Mar 2020 20:19:40 +0000 (16:19 -0400)]
quartz: Drop unused vfuncs

6 years agowin32: Drop some unused vfuncs
Matthias Clasen [Mon, 9 Mar 2020 17:41:44 +0000 (10:41 -0700)]
win32: Drop some unused vfuncs

toplevel_resize is unused in the frontend.

6 years agowayland: Drop some unused vfuncs
Matthias Clasen [Mon, 9 Mar 2020 17:35:30 +0000 (10:35 -0700)]
wayland: Drop some unused vfuncs

show, withdraw, raise, lower, toplevel_resize,
present_popup,
are all unused in the frontend.

6 years agox11: Drop some unused vfuncs
Matthias Clasen [Mon, 9 Mar 2020 17:35:00 +0000 (10:35 -0700)]
x11: Drop some unused vfuncs

show, withdraw, raise, lower are all unused in the frontend.

6 years agobroadway: Drop some unused vuncs
Matthias Clasen [Mon, 9 Mar 2020 17:34:08 +0000 (10:34 -0700)]
broadway: Drop some unused vuncs

show, withdraw, raise, lower, present_popup
are all unused by the frontend.

6 years agosurface: Drop gdk_surface_show
Matthias Clasen [Wed, 11 Mar 2020 20:16:33 +0000 (16:16 -0400)]
surface: Drop gdk_surface_show

No longer used.

6 years agowin32: Stop using gdk_surface_show
Matthias Clasen [Mon, 9 Mar 2020 17:25:06 +0000 (10:25 -0700)]
win32: Stop using gdk_surface_show

6 years agobroadway: Stop using gdk_surface_show
Matthias Clasen [Mon, 9 Mar 2020 17:24:52 +0000 (10:24 -0700)]
broadway: Stop using gdk_surface_show

6 years agowayland: Drop dead code
Matthias Clasen [Mon, 9 Mar 2020 17:24:30 +0000 (10:24 -0700)]
wayland: Drop dead code

6 years agox11: Stop using gdk_surface_show
Matthias Clasen [Mon, 9 Mar 2020 17:20:13 +0000 (10:20 -0700)]
x11: Stop using gdk_surface_show

6 years agogdk: Drop surface-type
Matthias Clasen [Mon, 9 Mar 2020 15:22:55 +0000 (08:22 -0700)]
gdk: Drop surface-type

We have interfaces for surface subtypes now.

6 years agowayland: Stop using surface-type
Matthias Clasen [Mon, 9 Mar 2020 15:04:19 +0000 (08:04 -0700)]
wayland: Stop using surface-type

6 years agox11: Stop using surface-type
Matthias Clasen [Mon, 9 Mar 2020 15:00:51 +0000 (08:00 -0700)]
x11: Stop using surface-type

6 years agobroadway: Stop using surface type
Matthias Clasen [Mon, 9 Mar 2020 15:00:26 +0000 (08:00 -0700)]
broadway: Stop using surface type

6 years agox11: Stop using gdk_surface_get_surface_type
Matthias Clasen [Sun, 8 Mar 2020 20:38:03 +0000 (13:38 -0700)]
x11: Stop using gdk_surface_get_surface_type

6 years agowayland: Stop using surface types
Matthias Clasen [Sun, 8 Mar 2020 20:37:13 +0000 (13:37 -0700)]
wayland: Stop using surface types

6 years agosurface: Stop using surface types
Matthias Clasen [Mon, 9 Mar 2020 20:00:08 +0000 (13:00 -0700)]
surface: Stop using surface types

6 years agosurface: Don't implement subtypes in the frontend
Matthias Clasen [Sun, 8 Mar 2020 16:21:18 +0000 (09:21 -0700)]
surface: Don't implement subtypes in the frontend

These are now provided by the backend.

6 years agox11: Only use state of toplevels
Matthias Clasen [Sun, 8 Mar 2020 16:20:07 +0000 (09:20 -0700)]
x11: Only use state of toplevels

Other surface subtypes don't have that property.

6 years agobroadway: Implement GdkPopup, GdkToplevel and GdkDragSurface
Matthias Clasen [Sat, 7 Mar 2020 22:11:16 +0000 (14:11 -0800)]
broadway: Implement GdkPopup, GdkToplevel and GdkDragSurface

Make subclasses of GdkX11Surface that implement these
interfaces.

6 years agoMerge branch 'migration-can-target-docs' into 'master'
Emmanuele Bassi [Thu, 12 Mar 2020 19:25:58 +0000 (19:25 +0000)]
Merge branch 'migration-can-target-docs' into 'master'

Docs: Refer to GtkWidget::can_target in migration guide

See merge request GNOME/gtk!1517

6 years agox11: Implement GdkPopup, GdkToplevel and GdkDragSurface
Matthias Clasen [Sat, 7 Mar 2020 21:59:24 +0000 (13:59 -0800)]
x11: Implement GdkPopup, GdkToplevel and GdkDragSurface

Make subclasses of GdkX11Surface that implement these
interfaces.

6 years agowayland: Implement GdkPopup, GdkToplevel and GdkDragSurface
Matthias Clasen [Sat, 7 Mar 2020 21:08:43 +0000 (13:08 -0800)]
wayland: Implement GdkPopup, GdkToplevel and GdkDragSurface

Make subclasses of GdkWaylandSurface that implement these
interfaces.

6 years agoDrop gdk_surface_set_opacity
Matthias Clasen [Wed, 4 Mar 2020 17:39:03 +0000 (09:39 -0800)]
Drop gdk_surface_set_opacity

6 years agox11: Stop using gdk_surface_set_opacity
Matthias Clasen [Wed, 4 Mar 2020 17:38:27 +0000 (09:38 -0800)]
x11: Stop using gdk_surface_set_opacity

We can just use the backend api directly.

6 years agowidget: Stop using gdk_surface_set_opacity
Matthias Clasen [Wed, 4 Mar 2020 17:38:01 +0000 (09:38 -0800)]
widget: Stop using gdk_surface_set_opacity

6 years agoDrop gdk_surface_show and gdk_surface_resize
Matthias Clasen [Wed, 4 Mar 2020 00:03:39 +0000 (16:03 -0800)]
Drop gdk_surface_show and gdk_surface_resize

We can now use GdkDragIcon api for the last cases
where this was used.

6 years agogtkdragicon: Use drag surface api
Matthias Clasen [Tue, 3 Mar 2020 23:56:23 +0000 (15:56 -0800)]
gtkdragicon: Use drag surface api

6 years agoAdd a GdkDragSurface interface
Matthias Clasen [Tue, 3 Mar 2020 23:55:45 +0000 (15:55 -0800)]
Add a GdkDragSurface interface

This will provide functionality specific to drag icons.

6 years agosurface: Drop redundant toplevel api
Matthias Clasen [Sat, 29 Feb 2020 17:05:42 +0000 (12:05 -0500)]
surface: Drop redundant toplevel api

The toplevel functionality to keep is moving to
GdkToplevel, and unused functions can go.

6 years agodocs: Stop using gdk_surface_get_decorations
Matthias Clasen [Tue, 3 Mar 2020 20:25:41 +0000 (12:25 -0800)]
docs: Stop using gdk_surface_get_decorations

6 years agotestgtk: Stop setting decorations and functions
Matthias Clasen [Thu, 5 Mar 2020 18:10:29 +0000 (10:10 -0800)]
testgtk: Stop setting decorations and functions

6 years agotests: Stop using gdk_surface_fullscreen
Matthias Clasen [Sun, 1 Mar 2020 18:10:39 +0000 (10:10 -0800)]
tests: Stop using gdk_surface_fullscreen

6 years agotestgtk: Stop using gdk_surface_set_icon_name
Matthias Clasen [Sun, 1 Mar 2020 17:32:50 +0000 (12:32 -0500)]
testgtk: Stop using gdk_surface_set_icon_name

Its not useful api, and will disappear.

6 years agowayland: Stop using gdk_surface_set_title
Matthias Clasen [Sun, 1 Mar 2020 17:31:26 +0000 (12:31 -0500)]
wayland: Stop using gdk_surface_set_title

Directly call the backend function for this, and for
gdk_surface_set_transient_for.

6 years agotestgtk: Stop using gdk_surface_get_state
Matthias Clasen [Sun, 1 Mar 2020 17:41:25 +0000 (12:41 -0500)]
testgtk: Stop using gdk_surface_get_state

6 years agodemo: stop using gdk_surface_get_state
Matthias Clasen [Sun, 1 Mar 2020 01:44:19 +0000 (20:44 -0500)]
demo: stop using gdk_surface_get_state

6 years agoa11y: Stop using gdk_surface_get_state
Matthias Clasen [Sun, 1 Mar 2020 01:44:02 +0000 (20:44 -0500)]
a11y: Stop using gdk_surface_get_state

6 years agox11: Stop using gdk_surface_get_state
Matthias Clasen [Sun, 1 Mar 2020 01:43:34 +0000 (20:43 -0500)]
x11: Stop using gdk_surface_get_state

All the surfaces we are dealing with here are toplevels.

6 years agogtk: use toplevel state getter
Matthias Clasen [Sun, 1 Mar 2020 01:32:15 +0000 (20:32 -0500)]
gtk: use toplevel state getter

6 years agowindow: Use GdkToplevel
Matthias Clasen [Sat, 29 Feb 2020 11:53:24 +0000 (06:53 -0500)]
window: Use GdkToplevel

6 years agoIntroduce GdkToplevel
Matthias Clasen [Sat, 29 Feb 2020 15:07:43 +0000 (10:07 -0500)]
Introduce GdkToplevel

This is a new interface for toplevel surfaces.

6 years agoIntroduce GdkToplevelLayout
Matthias Clasen [Sat, 29 Feb 2020 15:31:22 +0000 (10:31 -0500)]
Introduce GdkToplevelLayout

This will be used in a new GdkTopleve interface in
the near future.

6 years agoDocs: Refer to GtkWidget::can_target in migration guide
Jason Francis [Thu, 12 Mar 2020 18:10:38 +0000 (14:10 -0400)]
Docs: Refer to GtkWidget::can_target in migration guide

This makes the docs consistent with the renaming changes in commit
ef982b7d46125f206b59ae4222d26947bda86246.

6 years agotestsuite: Stop using type-hints
Matthias Clasen [Wed, 11 Mar 2020 22:12:41 +0000 (18:12 -0400)]
testsuite: Stop using type-hints

6 years agowindow: Drop type hints
Matthias Clasen [Fri, 6 Mar 2020 20:57:55 +0000 (12:57 -0800)]
window: Drop type hints

6 years agox11: Set type hints based on surface type
Matthias Clasen [Sat, 7 Mar 2020 17:07:53 +0000 (09:07 -0800)]
x11: Set type hints based on surface type

Set the ewmh type hints based on the surface type and
transient parent, instead of taking it from the type hint.

6 years agoStop setting type hints for dialogs
Matthias Clasen [Fri, 6 Mar 2020 20:57:37 +0000 (12:57 -0800)]
Stop setting type hints for dialogs

6 years agoshortcutswindow: Stop setting type hints
Matthias Clasen [Fri, 6 Mar 2020 20:55:28 +0000 (12:55 -0800)]
shortcutswindow: Stop setting type hints

6 years agoheaderbar: Stop looking at type hints
Matthias Clasen [Fri, 6 Mar 2020 20:55:15 +0000 (12:55 -0800)]
headerbar: Stop looking at type hints

6 years agotestsuite: Stop using type-hint
Matthias Clasen [Wed, 11 Mar 2020 21:44:21 +0000 (17:44 -0400)]
testsuite: Stop using type-hint

6 years agoa11y: Stop using type hints
Matthias Clasen [Fri, 6 Mar 2020 20:55:01 +0000 (12:55 -0800)]
a11y: Stop using type hints

6 years agowayland: Stop tracking orphan dialogs
Matthias Clasen [Fri, 6 Mar 2020 20:38:13 +0000 (12:38 -0800)]
wayland: Stop tracking orphan dialogs

Wayland has no concept of transient-for-group. If we want to
support that, add proper proper protocol for it, don't hack it
in this like.

6 years agosurface: Rename gdk_surface_input_shape_combine_region
Matthias Clasen [Sun, 1 Mar 2020 19:29:06 +0000 (11:29 -0800)]
surface: Rename gdk_surface_input_shape_combine_region

There is no shape combining going on anymore, so
call this just gdk_surface_set_input_region, and
remove the offset arguments too. All callers pass
0 anyway.

Update all callers and implementations.

6 years agox11: Stop using gdk_surface_maximize
Matthias Clasen [Sat, 29 Feb 2020 18:11:53 +0000 (13:11 -0500)]
x11: Stop using gdk_surface_maximize

Just use the backend function directly.

6 years agox11: Stop using gdk_surface_set_geometry_hints
Matthias Clasen [Sat, 29 Feb 2020 18:06:43 +0000 (13:06 -0500)]
x11: Stop using gdk_surface_set_geometry_hints

Just use the backend function directly.

6 years agowayland: Stop using gdk_surface_set_geometry_hints
Matthias Clasen [Sat, 29 Feb 2020 18:06:22 +0000 (13:06 -0500)]
wayland: Stop using gdk_surface_set_geometry_hints

Just use the backend function directly.

6 years agoinspector: Stop raising and lowering windows
Matthias Clasen [Sat, 29 Feb 2020 17:55:13 +0000 (12:55 -0500)]
inspector: Stop raising and lowering windows

We should always be composited, so this should not
matter in practice.

6 years agox11: Stop using gdk_surface_raise
Matthias Clasen [Sat, 29 Feb 2020 17:54:24 +0000 (12:54 -0500)]
x11: Stop using gdk_surface_raise

Avoid a vfunc roundtrip and just use the backend
implementation directly.

6 years agobroadway: Stop using gdk_surface_raise
Matthias Clasen [Sat, 29 Feb 2020 17:53:26 +0000 (12:53 -0500)]
broadway: Stop using gdk_surface_raise

We don't implement this anyway. Add a shortcut
to the backend function in case we ever do.

6 years agox11: Stop abusing type hints for dnd
Matthias Clasen [Sat, 29 Feb 2020 17:37:51 +0000 (12:37 -0500)]
x11: Stop abusing type hints for dnd

Nothing in GDK depends on this being set, so just
don't do it.

6 years agowayland: Stop abusing type hints
Matthias Clasen [Sat, 29 Feb 2020 17:25:51 +0000 (12:25 -0500)]
wayland: Stop abusing type hints

Instead of misusing window type hints, introduce
a private flag for drag surfaces.

6 years agosurface: Drop popup api
Matthias Clasen [Wed, 11 Mar 2020 05:15:43 +0000 (01:15 -0400)]
surface: Drop popup api

We have the GdkPopup interface now.

6 years agotooltip: Use GdkPopup
Matthias Clasen [Sat, 29 Feb 2020 14:46:13 +0000 (09:46 -0500)]
tooltip: Use GdkPopup

6 years agopopover: Use GdkPopup
Matthias Clasen [Sat, 29 Feb 2020 14:44:05 +0000 (09:44 -0500)]
popover: Use GdkPopup

6 years agosurface: Implement GdkPopup
Matthias Clasen [Sat, 29 Feb 2020 14:34:11 +0000 (09:34 -0500)]
surface: Implement GdkPopup

This is not quite right, and only temporary, since
it makes GDK_IS_POPUP (surface) true for every surface.

Eventually, the implementation will be moved to the
backends.

6 years agoIntroduce GdkPopup
Matthias Clasen [Sat, 29 Feb 2020 14:17:02 +0000 (09:17 -0500)]
Introduce GdkPopup

This is a new interface for popup surfaces.

6 years agopopuplayout: Add docs
Matthias Clasen [Mon, 9 Mar 2020 20:36:38 +0000 (13:36 -0700)]
popuplayout: Add docs

6 years agoMove GdkSurface autocleanup declaration
Matthias Clasen [Sat, 29 Feb 2020 14:17:23 +0000 (09:17 -0500)]
Move GdkSurface autocleanup declaration

We need this available after including gdksurface.h.

6 years agowayland: Stop calling frontend surface api
Matthias Clasen [Sat, 29 Feb 2020 14:51:26 +0000 (09:51 -0500)]
wayland: Stop calling frontend surface api

This is an unnecessary vfunc roundtrip, and the
frontend api is going away shortly.

6 years agoSimplify surface move/drag api
Matthias Clasen [Sat, 29 Feb 2020 16:25:32 +0000 (11:25 -0500)]
Simplify surface move/drag api

Drop the with_device variants, and always pass a device.

6 years agotestsuite: Update a11y test output
Matthias Clasen [Wed, 11 Mar 2020 20:37:32 +0000 (16:37 -0400)]
testsuite: Update a11y test output

6 years agotestsuite: Stop using GtkSpinner::active
Matthias Clasen [Wed, 11 Mar 2020 20:37:10 +0000 (16:37 -0400)]
testsuite: Stop using GtkSpinner::active

This property was renamed to ::spinning.

6 years agoDrop gtk_window_begin_move/resize_drag
Matthias Clasen [Sat, 29 Feb 2020 16:14:01 +0000 (11:14 -0500)]
Drop gtk_window_begin_move/resize_drag

These are just simple wrappers around GdkSurface
api, and we don't need them.

6 years agodisable popover test
Matthias Clasen [Wed, 11 Mar 2020 20:41:02 +0000 (16:41 -0400)]
disable popover test

This is failing atm

6 years agoMerge branch 'vfl-error' into 'master'
Matthias Clasen [Wed, 11 Mar 2020 15:56:46 +0000 (15:56 +0000)]
Merge branch 'vfl-error' into 'master'

Fix message for VFL parser errors

See merge request GNOME/gtk!1514

6 years agoFix message for VFL parser errors
Emmanuele Bassi [Wed, 11 Mar 2020 15:14:17 +0000 (15:14 +0000)]
Fix message for VFL parser errors

The loop is iterating over the wrong variable, and it's reimplementing
g_strfill() in a less efficient way.

6 years agoMerge branch 'wip/ricotz/annotations' into 'master'
Benjamin Otte [Mon, 9 Mar 2020 20:47:29 +0000 (20:47 +0000)]
Merge branch 'wip/ricotz/annotations' into 'master'

Really fix annotation for GtkDropTarget.get_gtypes()

See merge request GNOME/gtk!1510